package solr;

import java.util.List;

public class SearchEntity {
	/**
	 * 查询语句
	 */
	private String q;
	/**
	 * 过滤语句
	 */
	private List<String> fq;
	/**
	 * 排序语句
	 */
	private List<String> sort;
	/**
	 * 开始行数
	 */
	private Integer start = 0;
	/**
	 * 查询行数
	 */
	private Integer rows = 10;
	/**
	 * 返回字段
	 */
	private List<String> fl;
	/**
	 * 高亮字段
	 */
	private List<String> hl;
	/**
	 * 高亮的前缀
	 */
	private String hl_pre = "<em>";
	/**
	 * 高亮的后缀
	 */
	private String hl_post = "</em>";
	/**
	 * 自定义权重查询时的字段打分
	 */
	private String qf;
	/**
	 * 自定义权重查询时的boost打分
	 */
	private String boost;
	/**
	 * 唯一字段
	 */
	private String uniqueField;
	/**
	 * 多核心查询链接集合
	 */
	private List<String> shards;
	
	/**
	 * 查询分面时返回的条数
	 */
	private Integer facetLimit = 10;
	
	/**
	 * 查询一个分面时的分面字段
	 */
	private String facetField;
	
	/**
	 * 查询多个分面时所用的分面字段集合
	 */
	private List<String> facetFields;
	/**
	 * 查询二维多个分面时所用的分面字段集合
	 */
	private List<String> facetPivotFields;
	
	/**
	 * 获取查询语句
	 * 
	 * @author 黄乾坤
	 * @Title getQ
	 * @return
	 */
	public String getQ() {
		return q;
	}
	/**
	 * 设置查询语句
	 * 
	 * @author 黄乾坤
	 * @Title setQ
	 * @param q
	 */
	public void setQ(String q) {
		this.q = q;
	}
	/**
	 * 获取过滤语句
	 * 
	 * @author 黄乾坤
	 * @Title getFq
	 * @return
	 */
	public List<String> getFq() {
		return fq;
	}
	/**
	 * 设置过滤语句
	 * 
	 * @author 黄乾坤
	 * @Title setFq
	 * @param fq
	 */
	public void setFq(List<String> fq) {
		this.fq = fq;
	}
	/**
	 * 获取排序语句
	 * 
	 * @author 黄乾坤
	 * @Title getSort
	 * @return
	 */
	public List<String> getSort() {
		return sort;
	}
	/**
	 * 设置排序语句
	 * 
	 * @author 黄乾坤
	 * @Title setSort
	 * @param sort
	 */
	public void setSort(List<String> sort) {
		this.sort = sort;
	}
	/**
	 * 获取开始条数
	 * 
	 * @author 黄乾坤
	 * @Title getStart
	 * @return
	 */
	public Integer getStart() {
		return start;
	}
	/**
	 * 设置开始条数
	 * 
	 * @author 黄乾坤
	 * @Title setStart
	 * @param start
	 */
	public void setStart(Integer start) {
		if (start != null && start >= 0) {
			this.start = start;
		}
	}
	/**
	 * 获取查询条数
	 * 
	 * @author 黄乾坤
	 * @Title getRows
	 * @return
	 */
	public Integer getRows() {
		return rows;
	}
	/**
	 * 设置查询条数
	 * 
	 * @author 黄乾坤
	 * @Title setRows
	 * @param rows
	 */
	public void setRows(Integer rows) {
		if (rows != null && rows > 0) {
			this.rows = rows;
		}
	}
	/**
	 * 获取返回字段
	 * 
	 * @author 黄乾坤
	 * @Title getFl
	 * @return
	 */
	public List<String> getFl() {
		return fl;
	}
	/**
	 * 设置返回字段
	 * 
	 * @author 黄乾坤
	 * @Title setFl
	 * @param fl
	 */
	public void setFl(List<String> fl) {
		this.fl = fl;
	}
	/**
	 * 获取高亮字段
	 * 
	 * @author 黄乾坤
	 * @Title getHl
	 * @return
	 */
	public List<String> getHl() {
		return hl;
	}
	/**
	 * 设置高亮字段
	 * 
	 * @author 黄乾坤
	 * @Title setHl
	 * @param hl
	 */
	public void setHl(List<String> hl) {
		this.hl = hl;
	}
	/**
	 * 获取高亮前缀
	 * 
	 * @author 黄乾坤
	 * @Title getHl_pre
	 * @return
	 */
	public String getHl_pre() {
		return hl_pre;
	}
	/**
	 * 设置高亮前缀
	 * 
	 * @author 黄乾坤
	 * @Title setHl_pre
	 * @param hl_pre
	 */
	public void setHl_pre(String hl_pre) {
		if (hl_pre != null) {
			this.hl_pre = hl_pre;
		}
	}
	/**
	 * 获取高亮后缀
	 * 
	 * @author 黄乾坤
	 * @Title getHl_post
	 * @return
	 */
	public String getHl_post() {
		return hl_post;
	}
	/**
	 * 设置高亮后缀
	 * 
	 * @author 黄乾坤
	 * @Title setHl_post
	 * @param hl_post
	 */
	public void setHl_post(String hl_post) {
		if (hl_post != null) {
			this.hl_post = hl_post;
		}
	}
	/**
	 * 获取自定义权重查询时的字段打分
	 * 
	 * @author 黄乾坤
	 * @Title getQf
	 * @return
	 */
	public String getQf() {
		return qf;
	}
	/**
	 * 设置自定义权重查询时的字段打分
	 * 
	 * @author 黄乾坤
	 * @Title setQf
	 * @param qf
	 */
	public void setQf(String qf) {
		this.qf = qf;
	}
	/**
	 * 获取自定义权重查询时的boost打分
	 * 
	 * @author 黄乾坤
	 * @Title getBoost
	 * @return
	 */
	public String getBoost() {
		return boost;
	}
	/**
	 * 设置自定义权重查询时的boost打分
	 * 
	 * @author 黄乾坤
	 * @Title setBoost
	 * @param boost
	 */
	public void setBoost(String boost) {
		this.boost = boost;
	}
	/**
	 * 获取唯一字段
	 * 
	 * @author 黄乾坤
	 * @Title getUniqueField
	 * @return
	 */
	public String getUniqueField() {
		return uniqueField;
	}
	/**
	 * 设置唯一字段
	 * 
	 * @author 黄乾坤
	 * @Title setUniqueField
	 * @param uniqueField
	 */
	public void setUniqueField(String uniqueField) {
		this.uniqueField = uniqueField;
	}
	/**
	 * 获取多核心查询链接集合
	 * 
	 * @author 黄乾坤
	 * @Title getShards
	 * @return
	 */
	public List<String> getShards() {
		return shards;
	}
	/**
	 * 设置多核心查询链接集合
	 * 
	 * @author 黄乾坤
	 * @Title setShards
	 * @param shards
	 */
	public void setShards(List<String> shards) {
		this.shards = shards;
	}
	/**
	 * 获取查询分面时返回的条数
	 * 
	 * @author 黄乾坤
	 * @Title getFacetLimit
	 * @return
	 */
	public Integer getFacetLimit() {
		return facetLimit;
	}
	/**
	 * 设置查询分面时返回的条数
	 * 
	 * @author 黄乾坤
	 * @Title setFacetLimit
	 * @param facetLimit
	 */
	public void setFacetLimit(Integer facetLimit) {
		if (facetLimit != null && facetLimit >= 0) {
			this.facetLimit = facetLimit;
		}
	}
	/**
	 * 获取查询一个分面时的分面字段
	 * 
	 * @author 黄乾坤
	 * @Title getFacetField
	 * @return
	 */
	public String getFacetField() {
		return facetField;
	}
	/**
	 * 设置查询一个分面时的分面字段
	 * 
	 * @author 黄乾坤
	 * @Title setFacetField
	 * @param facetField
	 */
	public void setFacetField(String facetField) {
		this.facetField = facetField;
	}
	/**
	 * 获取查询多个分面时所用的分面字段集合
	 * 
	 * @author 黄乾坤
	 * @Title getFacetFields
	 * @return
	 */
	public List<String> getFacetFields() {
		return facetFields;
	}
	/**
	 * 设置查询多个分面时所用的分面字段集合
	 * 
	 * @author 黄乾坤
	 * @Title setFacetFields
	 */
	public void setFacetFields(List<String> facetFields) {
		this.facetFields = facetFields;
	}
	/**
	 * 获取查询二维多个分面时所用的分面字段集合
	 * 
	 * @author 黄乾坤
	 * @Title getFacetFields
	 * @return
	 */
	public List<String> getFacetPivotFields() {
		return facetPivotFields;
	}
	/**
	 * 设置查询二维多个分面时所用的分面字段集合
	 * 
	 * @author 黄乾坤
	 * @Title setFacetFields
	 */
	public void setFacetPivotFields(List<String> facetPivotFields) {
		this.facetPivotFields = facetPivotFields;
	}

}
